In recent years, distributed network communication protocols have gained prominence as a methodology for designing robust and scalable communication schemes in large distributed systems. Each node computer on the network selects some other node computer as a communication partner at random, or in a predetermined fashion, and shares information. When one computer communicates with another, the state of at least one computer changes to reflect the state of the other. Information passes along, in predetermined paths, or randomly, until all the computers are exposed to the information. The power of a distributed network communication protocol lies in its robust ability to spread information.
A database is an integrated collection of data records, files, and other database objects needed by an application. Database objects are stored in database tables that are accessible to a user. A database management system (“DBMS”) is the software that controls the creation, maintenance, and the use of a database. The DBMS handles user queries for data.
A distributed database is a database that consists of two or more data files located at different sites on a computer network. Because the database is distributed, different users can access it without interfering with one another. Distributed databases can have the same information duplicated on many sites. Duplication allows users to access the information from more than one site, possibly located around the world; thus relieving one site from being inundated with user requests concerning one piece of information. However, the distributed database environment must be periodically synchronized to make sure that all the nodes have consistent data.